package collection;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * 数组转换为集合
 * 数组的工具类Arrays提供了一个静态方法asList,可以将一个数组转换为一个List集合
 */
public class ArrayToListDemo {
    public static void main(String[] args) {
        String[] array = {"one","tow","three","four","five","six"};
        System.out.println("array:"+ Arrays.toString(array));

        List<String> list = Arrays.asList(array);
        System.out.println("list:"+list);

        list.set(1,"seven");
        System.out.println("list:"+list);
        //对该集合的操作就是对原数组对应的操作
        System.out.println("array:"+Arrays.toString(array));

        //由于数组定长,因此对该集合增删元素是不支持的，会抛出如下异常:
        //UnsupportedOperationException
        // list.add("abc");

        /*
            可自行创建一个集合，这样操作是没有限制的
            所有集合都提供了一个参数为Collection的构造器,作用是创建该集合
            的同时包含给定集合中的所有元素
         */
        List<String> list1 = new ArrayList<>(list);
        System.out.println("list1:"+list1);
        list1.remove(3);
        System.out.println("list1:"+list1);
    }
}
